[SecuritySolution][Navigation] Classic nav updates#260429
[SecuritySolution][Navigation] Classic nav updates#260429ashokaditya merged 22 commits intoelastic:mainfrom
Conversation
5021dc2 to
546e271
Compare
and remove landing page navigation interation from top level nav links refs elastic/security-team#16454 elastic/security-team#16455
295d91a to
a94dec0
Compare
a94dec0 to
55fd026
Compare
81bc69c to
598cc82
Compare
| const navLinks = useNavLinks(); | ||
| const getSecuritySolutionLinkProps = useGetSecuritySolutionLinkProps(); // adds href and onClick props | ||
|
|
||
| const classicFooterItems = useMemo((): SolutionSideNavItem[] | null => { |
There was a problem hiding this comment.
This logic is only needed because of the feature flag right? imo with how many different variations of the nav already exist, creating yet another one is not worth the effort/chance of introducing bugs, and it should be kept as declarative as possible. I'm fine with the flag and all the logic it adds if it's necessary, but doesn't really seem so to me.
| }, | ||
| ]; | ||
|
|
||
| return securityClassicNavUpdate |
There was a problem hiding this comment.
I think if the feature flag is false, you'll still want these links to appear as before, no? The nav in that case will jump from Intelligence to Get Started, with siemReadiness, aiValue, and siemMigrationsLanding all completely missing, which is causing the cypress tests to fail.
….com:ashokaditya/kibana into task/security-deployment-classic-nav-udpates
kqualters-elastic
left a comment
There was a problem hiding this comment.
desk tested and everything seems to work as expected now, lgtm 👍
💛 Build succeeded, but was flaky
Failed CI StepsTest Failures
Metrics [docs]Public APIs missing comments
Async chunks
Page load bundle
History
cc @ashokaditya |
## Summary Enables classic nav updates added in #260429 for `9.4`. - [x] `securityClassicNavUpdate` feature flag is set to `true` - [x] updated related tests that should now expect elements from the new nav changes <img width="512" height="421" alt="Screenshot 2026-04-14 at 10 39 02" src="https://github.com/user-attachments/assets/526cfa5a-1a61-43c5-b1fa-fdb828fb0e83" /> <img width="512" height="349" alt="Screenshot 2026-04-14 at 10 39 28" src="https://github.com/user-attachments/assets/1038cac2-443f-4456-9744-c7a7a6ada8a2" /> **Note:** There will be a follow up PR for the following BC to remove the feature flag and make the feature flag logic permanent on `main` and `9.4`. ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [ ] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [ ] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [ ] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [ ] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ### Identify risks Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss. Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging. - [ ] [See some risk examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) - [ ] ...
…2358) ## Summary Enables classic nav updates added in elastic#260429 for `9.4`. - [x] `securityClassicNavUpdate` feature flag is set to `true` - [x] updated related tests that should now expect elements from the new nav changes <img width="512" height="421" alt="Screenshot 2026-04-14 at 10 39 02" src="https://github.com/user-attachments/assets/526cfa5a-1a61-43c5-b1fa-fdb828fb0e83" /> <img width="512" height="349" alt="Screenshot 2026-04-14 at 10 39 28" src="https://github.com/user-attachments/assets/1038cac2-443f-4456-9744-c7a7a6ada8a2" /> **Note:** There will be a follow up PR for the following BC to remove the feature flag and make the feature flag logic permanent on `main` and `9.4`. ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [ ] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [ ] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [ ] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [ ] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ### Identify risks Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss. Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging. - [ ] [See some risk examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) - [ ] ... (cherry picked from commit f9bf4a3) # Conflicts: # x-pack/solutions/security/test/security_solution_cypress/cypress/e2e/explore/navigation/navigation.cy.ts
) (#263260) # Backport This will backport the following commits from `main` to `9.4`: - [[SecuritySolution][Navigation] Enable classic nav updates (#262358)](#262358) <!--- Backport version: 11.0.1 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Ash","email":"1849116+ashokaditya@users.noreply.github.com"},"sourceCommit":{"committedDate":"2026-04-14T14:28:20Z","message":"[SecuritySolution][Navigation] Enable classic nav updates (#262358)\n\n## Summary\n\nEnables classic nav updates added in\nhttps://github.com//pull/260429 for `9.4`.\n\n- [x] `securityClassicNavUpdate` feature flag is set to `true` \n- [x] updated related tests that should now expect elements from the new\nnav changes\n\n<img width=\"512\" height=\"421\" alt=\"Screenshot 2026-04-14 at 10 39 02\"\nsrc=\"https://github.com/user-attachments/assets/526cfa5a-1a61-43c5-b1fa-fdb828fb0e83\"\n/>\n<img width=\"512\" height=\"349\" alt=\"Screenshot 2026-04-14 at 10 39 28\"\nsrc=\"https://github.com/user-attachments/assets/1038cac2-443f-4456-9744-c7a7a6ada8a2\"\n/>\n\n\n**Note:** There will be a follow up PR for the following BC to remove\nthe feature flag and make the feature flag logic permanent on `main` and\n`9.4`.\n\n### Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers should verify this PR satisfies this list as well.\n\n- [ ] Any text added follows [EUI's writing\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\nsentence case text and includes [i18n\nsupport](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)\n- [ ]\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\nwas added for features that require explanation or tutorials\n- [x] [Unit or functional\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\nwere updated or added to match the most common scenarios\n- [ ] If a plugin configuration key changed, check if it needs to be\nallowlisted in the cloud and added to the [docker\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\n- [ ] This was checked for breaking HTTP API changes, and any breaking\nchanges have been approved by the breaking-change committee. The\n`release_note:breaking` label should be applied in these situations.\n- [ ] [Flaky Test\nRunner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was\nused on any tests changed\n- [ ] The PR description includes the appropriate Release Notes section,\nand the correct `release_note:*` label is applied per the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n- [ ] Review the [backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand apply applicable `backport:*` labels.\n\n### Identify risks\n\nDoes this PR introduce any risks? For example, consider risks like hard\nto test bugs, performance regression, potential of data loss.\n\nDescribe the risk, its severity, and mitigation for each identified\nrisk. Invite stakeholders and evaluate how to proceed before merging.\n\n- [ ] [See some risk\nexamples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)\n- [ ] ...","sha":"f9bf4a36d6fbb295411231bd7d05d2dce3db6caa","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","backport:version","v9.4.0","v9.5.0","Team:Security Deployment"],"title":"[SecuritySolution][Navigation] Enable classic nav updates","number":262358,"url":"https://github.com/elastic/kibana/pull/262358","mergeCommit":{"message":"[SecuritySolution][Navigation] Enable classic nav updates (#262358)\n\n## Summary\n\nEnables classic nav updates added in\nhttps://github.com//pull/260429 for `9.4`.\n\n- [x] `securityClassicNavUpdate` feature flag is set to `true` \n- [x] updated related tests that should now expect elements from the new\nnav changes\n\n<img width=\"512\" height=\"421\" alt=\"Screenshot 2026-04-14 at 10 39 02\"\nsrc=\"https://github.com/user-attachments/assets/526cfa5a-1a61-43c5-b1fa-fdb828fb0e83\"\n/>\n<img width=\"512\" height=\"349\" alt=\"Screenshot 2026-04-14 at 10 39 28\"\nsrc=\"https://github.com/user-attachments/assets/1038cac2-443f-4456-9744-c7a7a6ada8a2\"\n/>\n\n\n**Note:** There will be a follow up PR for the following BC to remove\nthe feature flag and make the feature flag logic permanent on `main` and\n`9.4`.\n\n### Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers should verify this PR satisfies this list as well.\n\n- [ ] Any text added follows [EUI's writing\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\nsentence case text and includes [i18n\nsupport](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)\n- [ ]\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\nwas added for features that require explanation or tutorials\n- [x] [Unit or functional\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\nwere updated or added to match the most common scenarios\n- [ ] If a plugin configuration key changed, check if it needs to be\nallowlisted in the cloud and added to the [docker\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\n- [ ] This was checked for breaking HTTP API changes, and any breaking\nchanges have been approved by the breaking-change committee. The\n`release_note:breaking` label should be applied in these situations.\n- [ ] [Flaky Test\nRunner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was\nused on any tests changed\n- [ ] The PR description includes the appropriate Release Notes section,\nand the correct `release_note:*` label is applied per the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n- [ ] Review the [backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand apply applicable `backport:*` labels.\n\n### Identify risks\n\nDoes this PR introduce any risks? For example, consider risks like hard\nto test bugs, performance regression, potential of data loss.\n\nDescribe the risk, its severity, and mitigation for each identified\nrisk. Invite stakeholders and evaluate how to proceed before merging.\n\n- [ ] [See some risk\nexamples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)\n- [ ] ...","sha":"f9bf4a36d6fbb295411231bd7d05d2dce3db6caa"}},"sourceBranch":"main","suggestedTargetBranches":["9.4"],"targetPullRequestStates":[{"branch":"9.4","label":"v9.4.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/262358","number":262358,"mergeCommit":{"message":"[SecuritySolution][Navigation] Enable classic nav updates (#262358)\n\n## Summary\n\nEnables classic nav updates added in\nhttps://github.com//pull/260429 for `9.4`.\n\n- [x] `securityClassicNavUpdate` feature flag is set to `true` \n- [x] updated related tests that should now expect elements from the new\nnav changes\n\n<img width=\"512\" height=\"421\" alt=\"Screenshot 2026-04-14 at 10 39 02\"\nsrc=\"https://github.com/user-attachments/assets/526cfa5a-1a61-43c5-b1fa-fdb828fb0e83\"\n/>\n<img width=\"512\" height=\"349\" alt=\"Screenshot 2026-04-14 at 10 39 28\"\nsrc=\"https://github.com/user-attachments/assets/1038cac2-443f-4456-9744-c7a7a6ada8a2\"\n/>\n\n\n**Note:** There will be a follow up PR for the following BC to remove\nthe feature flag and make the feature flag logic permanent on `main` and\n`9.4`.\n\n### Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers should verify this PR satisfies this list as well.\n\n- [ ] Any text added follows [EUI's writing\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\nsentence case text and includes [i18n\nsupport](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)\n- [ ]\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\nwas added for features that require explanation or tutorials\n- [x] [Unit or functional\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\nwere updated or added to match the most common scenarios\n- [ ] If a plugin configuration key changed, check if it needs to be\nallowlisted in the cloud and added to the [docker\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\n- [ ] This was checked for breaking HTTP API changes, and any breaking\nchanges have been approved by the breaking-change committee. The\n`release_note:breaking` label should be applied in these situations.\n- [ ] [Flaky Test\nRunner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was\nused on any tests changed\n- [ ] The PR description includes the appropriate Release Notes section,\nand the correct `release_note:*` label is applied per the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n- [ ] Review the [backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand apply applicable `backport:*` labels.\n\n### Identify risks\n\nDoes this PR introduce any risks? For example, consider risks like hard\nto test bugs, performance regression, potential of data loss.\n\nDescribe the risk, its severity, and mitigation for each identified\nrisk. Invite stakeholders and evaluate how to proceed before merging.\n\n- [ ] [See some risk\nexamples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)\n- [ ] ...","sha":"f9bf4a36d6fbb295411231bd7d05d2dce3db6caa"}}]}] BACKPORT-->
…#263110) ## Summary > [!Caution] > This should be merged on/after `16th Apr` so it is ready for BC3 (23rd Apr) Remove feature flag and enable classic nav unconditionally. related to #260429. FF was enabled for BC2 in #262358 ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [ ] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [ ] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [ ] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [ ] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ### Identify risks Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss. Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging. - [ ] [See some risk examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) - [ ] ...
…elastic#263110) ## Summary > [!Caution] > This should be merged on/after `16th Apr` so it is ready for BC3 (23rd Apr) Remove feature flag and enable classic nav unconditionally. related to elastic#260429. FF was enabled for BC2 in elastic#262358 ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [ ] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [ ] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [ ] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [ ] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ### Identify risks Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss. Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging. - [ ] [See some risk examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) - [ ] ... (cherry picked from commit 6a35d30)
|
Pinging @elastic/security-solution (Team: SecuritySolution) |


Summary
All changes are gated behind a
xpack.securitySolution.enableExperimentalflag calledsecurityClassicNavUpdateAdds changes to the classic nav:
Checklist
Check the PR satisfies following conditions.
Reviewers should verify this PR satisfies this list as well.
release_note:breakinglabel should be applied in these situations.release_note:*label is applied per the guidelinesbackport:*labels.Identify risks
Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss.
Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging.